package com.pic.mgt.haishin.executer;

import java.io.File;

import com.pic.mgt.haishin.executer.HaishinTargetFileProcess.TerminalProcessResult;
import com.pic.mgt.unit.Business;

/**
 * 配信目標檔案處理狀況傾聽。
 * @author p10118178
 *
 */
public interface TerminalListener {
	
	/**
	 *  當在進行 Target File 處理動作過程中，每完成一項端末
	 *  作業，就會觸發此方式通知。
	 *  注意!此Listener有回傳值，會影響配信目標檔案的處理中斷。
	 * @param haishinBusinessUnit 處理的配信業務  
	 * @param terminal 處理的端末
	 * @param completedTerminal　處理的檔案
	 * @param terminalProcessResult 端末處理結果
	 * @return true: 配信目標檔案處理動作會繼續； false:配信目標檔案處理動作會被中斷。
	 */
	boolean terminalProcessNotify(Business business,
							   String terminal,
							   File completeFile,
							   TerminalProcessResult terminalProcessResult);
	
}
